perm filename ECHSER.MID[S,NET]2 blob
sn#697640 filedate 1983-01-28 generic text, type C, neo UTF8
COMMENT ā VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 X PDL ECHSER ECHLUP SUICID ...LIT SVRRTS ERRTNS ERRHAN ERRINS
C00004 ENDMK
Cā;
;X PDL ECHSER ECHLUP SUICID ...LIT SVRRTS ERRTNS ERRHAN ERRINS
TITLE ECHSER
SUBTTL Definitions
; Mark Crispin, SU-AI, September 1978
; Assembly switches
IFNDEF SVRSKT,SVRSKT==7 ; default listen socket
IFNDEF PDLLEN,PDLLEN==50 ; stack length
; AC definitions. 0ā3 are used by NETWRK
X=4 ? A=5 ? B=6 ? P=17
PDL: BLOCK PDLLEN ; stack
ECHSER: JFCL
RESET
MOVE ['ECHSER]
SETNAM
MOVE P,[PDL(-PDLLEN)]
MOVEI [DEBREAK ? JRST SUICID]
MOVEM JOBAPR
CLKINT 5.*60.*60. ; must die if around too long
OUTSTR [ASCIZ/ECHSER started
/]
; Listen for a connection on our socket
MOVEI SVRSKT
MOVEM LSNSKT
PUSHJ P,LISTEN
ECHLUP: PUSHJ P,NETICW
PUSHJ P,NETOCH ; send character to user
PUSHJ P,NETSND
JRST ECHLUP
SUICID: RESET ? EXIT
...LIT: CONSTANTS
; Wonderful network routines
SVRRTS==-1 ; include server routines
ERRTNS==-1 ; include error routines
ERRHAN==-1 ; include automagic error handling
ERRINS==<JRST SUICID> ; error instruction
.INSRT NETWRK
END ECHSER